home *** CD-ROM | disk | FTP | other *** search
- Our setup:
-
- Sun 3/60 with cgfour
- SunOS 4.0 (plus what Sun calls their "general hygiene" patch tape)
- XV11R3 + MIT fixes 1 through 8 + "Purdue enhancements" + one local
- "ANSIfication" fix (previously reported to MIT,
- and attached below)
-
- I installed gcc 1.34 (plus the expr.c fix) and also ran the "fixincludes"
- script.
-
- I built the X stuff with with the "CC" line in the "Sun.macros" file set to:
-
- CC = gcc -fcombine-regs -fstrength-reduce -finline-functions -fpcc-struct-return -DPURDUE -Dinline=INLINE -DNOSTDHDRS
-
- where -fcombine-regs, -fstrength-reduce, and -finline-functions
- specify desired optimizations, -fpcc-struct-return makes things
- compatible with the dbm library, -DPURDUE buys the Purdue speedups,
- -Dinline=INLINE avoids a problem with a variable named "inline" in the
- X file "fonts/bdftosnf/fontutil.c", and -DNOSTDHDRS avoids a problem
- with multiple (and conflicting) typedef'ing of "size_t" in the
- gcc-provided STDDEF_H and Sun's "sys/types.h".
-
- Some clients may need -fwritable-strings. twm is said to need it.
-
- The ANSIfication fix:
-
- > From ado Mon Dec 26 10:55:28 1988
- > To: xbugs@expo.lcs.mit.edu
- > Subject: Xlibint and __STDC__ don't mix
- >
- >
- > X Window System Bug Report
- > xbugs@expo.lcs.mit.edu
- >
- >
- >
- >
- > VERSION:
- > R3
- >
- > CLIENT MACHINE and OPERATING SYSTEM:
- > Sun 3/60 running SunOS 4.0
- >
- > DISPLAY:
- > Sun CG4
- >
- > WINDOW MANAGER:
- > uwm
- >
- > AREA:
- > Xlib
- >
- > SYNOPSIS:
- > Xlibint.h and __STDC__ don't mix
- >
- > DESCRIPTION:
- > If __STDC__ is defined (and UNIXCPP is not defined),
- > code that uses the GetReqExtra macro defined in Xlibint.h
- > is uncompilable.
- >
- > REPEAT BY:
- > Script started on Mon Dec 26 10:52:58 1988
- > elsie$ cd lib/X
- > elsie$ rm Xbackgnd.o
- > rm: Xbackgnd.o: No such file or directory
- > elsie$ rm XBackgnd.o
- > elsie$ make XBackgnd.o CC=/usr/local/bin/gcc
- > rm -f XBackgnd.o
- > /usr/local/bin/gcc -c -O -I. -I../../. -I../.././X11 -DTCPCONN -DUNIXCONN XBackgnd.c
- > XBackgnd.c: In function XSetWindowBackground:
- > XBackgnd.c:16: undeclared variable `sz_' (first use here)
- > *** Error code 1
- > make: Fatal error: Command failed for target `XBackgnd.o'
- > elsie$ exit
- >
- > script done on Mon Dec 26 10:53:51 1988
- >
- > SAMPLE FIX:
- > *** 1.1/Xlibint.h Mon Dec 26 10:39:37 1988
- > --- 1.2/Xlibint.h Mon Dec 26 10:39:37 1988
- > ***************
- > *** 122,133 ****
- > #if defined(__STDC__) && !defined(UNIXCPP)
- > #define GetReqExtra(name, n, req) \
- > WORD64ALIGN\
- > ! if ((dpy->bufptr + SIZEOF(*req) + n) > dpy->bufmax)\
- > _XFlush(dpy);\
- > req = (x##name##Req *)(dpy->last_req = dpy->bufptr);\
- > req->reqType = X_##name;\
- > ! req->length = (SIZEOF(*req) + n)>>2;\
- > ! dpy->bufptr += SIZEOF(*req) + n;\
- > dpy->request++
- > #else
- > #define GetReqExtra(name, n, req) \
- > --- 122,133 ----
- > #if defined(__STDC__) && !defined(UNIXCPP)
- > #define GetReqExtra(name, n, req) \
- > WORD64ALIGN\
- > ! if ((dpy->bufptr + SIZEOF(x##name##Req) + n) > dpy->bufmax)\
- > _XFlush(dpy);\
- > req = (x##name##Req *)(dpy->last_req = dpy->bufptr);\
- > req->reqType = X_##name;\
- > ! req->length = (SIZEOF(x##name##Req) + n)>>2;\
- > ! dpy->bufptr += SIZEOF(x##name##Req) + n;\
- > dpy->request++
- > #else
- > #define GetReqExtra(name, n, req) \
- > --
- > Arthur David Olson ado@ncifcrf.gov ADO is a trademark of Ampex.
-
-